﻿#pragma once

//-------------------------------------------
//
//静载上位机结构体
//-------------------------------------------


/************************************************************************/
/*            HC-HZ 静载上位机结构体
/* 可读取文件格式：.jzq
/************************************************************************/


//文件版本
typedef struct HZ_VERSION
{
	char	chSoftFlag[12];					//L"HC_HZ"
	int		nFileDaiHao;					//软件代号  1
	int		nFileVersion;					//文件版本号 100
	char	chRes1[100];					//预留
}HZ_Version;

//数据参数
typedef struct DATA_INFO
{
	float	fWeiyi[8];				//  	//位移数值 
	float	fWeiyiAvg;				//  	//平均位移值
	float	fLoadValue;				//  	//本级荷载值
	int		nIdx;					//  	//本级索引
	int		nRecordId;				//  	//原始记录索引
	float	fCurLoad;				//  	//当前荷载值
	float	fCurYouya;				//  	//当前油压值   MPa
	int		nTimeGap;				//  	//时间间隔
	char	chRecordTime[40];		//  	//记录时间
	int		nJiaZaiOrXieZai;		//  	//加载卸载标志位  3:加载 5：卸载
	char	chBeiZhu[120];			//  	//备注
	float	fShangZhuangShangBa;	//		//上桩上拔		//用于 水平多循环规范
	char	chRes[200];				//  	//备用
}Data_Info;

//工程信息
typedef struct HZ_PROJECT_INFO	//偏移量
{
	char	chProjectName[120];		//		//工程名称
	char	chTestDate[28];			//		//检测时间
	char	chUploadDate[28];		//		//上传时间
	char	chPileNum[60];			//		//桩编号
	float	nMaxLoad;				//		//最大荷载 1～50000，单位：kN
	int		nFirstLoad;				//		//首次加载级数 1～100
	int		nYuLoadGrade;			//		//预加载分级数 1～200
	int		nLoadGrade;				//		//当前加载分级数 1～200
	float	fLoadList[200];			//		//加载级数列表
	int		nLoadoffGrade;			//		//当前卸载载分级数 1～200
	float	fLoadoffList[200];		//		//卸载级数列表
	int		nPileDiam;				//		//桩径  方桩是 此值为基桩长  单位mm
	int		nPileDiamW;				//		//基桩宽	单位mm
	float	fPilelength;			//		//桩长
	char	chTestNo[60];			//		//测试流水号 桩文件的上传流水号，此项为上传服务器所需信息，取值范围：24字符
	char	chTestType;				//		//试验类型
	char	chUnit;					//		//压力单位 0:kN、 1:KPa
	char	chShape;				//		//桩截面形状  0：圆形  1：矩形
	char	chPileUsed;				//		//桩试验用途 0：工程桩  1：试验桩
	char	chStandard;				//		//规范
	char    chStandardType;			//		//规范类型 "国家规范", "行业规范", "铁路工程规范", "港口水运规范"
	char	chXunHuanCnt;			//		//循环次数
	char	chRes1[1];				//		//预留1
	int		nChuShiHeZai;			//		//初始荷载 是个百分比 整数

	char	chJackNum[60];			//		//千斤顶编号
	int		nJackCnts;				//		//千斤顶个数
	int		nJackDiam;				//		//千斤顶内径  1-500 单位mm
	char	chJackType;				//		//千斤顶类型  0：单油路  1：双油路
	char	chWeiYiSensorType;		//		//位移传感器类型	0：调频位移传感器	1：数字容栅位移传感器
	char	chYaLiSensorType;		//		//压力传感器类型	0：油压传感器选项	1：荷重传感器
	char	chPlateType;			//		//承压板形状		0：圆形				1：方形
	char	chWeiYiSensorNum[204];	//		//位移传感器编号
	char	chYaLiSensorNum[60];	//		//压力传感器编号
	float	fPlateArea;				//		//承压板面积 单位 m²

	char	chChanelUsed[8];		//		//位移通道选择中的测试用途  正常8通道
	char	chChannelSel[8];		//		//位移通道选择 正常8通道
	char	chMaoPileNum[8][40];	//		//锚桩编号
	int		nLoadTimeList[12];		//		//加载时间间隔 12个值
	int		nLoadOffTimeList[12];	//		//卸载时间间隔
	int		nSignCnts;				//		//标记个数 正常上限20 
	float	fSignHeZai[30];			//		//标记荷载
	float	fSignWeiyi[30];			//		//标记位移

	int		nDataCnt;				//		//数据个数 最多400个
	char	chBeizhu[100];			//		//打印设置-表头设置-自定义表头-备注

	char	chYiqiNum[60];			//		//仪器编号
	char	chTestPeople[28];		//		//测试人员
	char	chTestPeopleNo[40];		//		//人员编号 上岗证号
	char	chJiangdingNo[40];		//		//检定证号
	char	chTestUnit[100];		//		//测试单位
	char	chSheJiUnit[100];		//		//设计单位
	char	chJianSheUnit[100];		//		//建设单位
	char	chJianLiUnit[100];		//		//监理单位
	char	chJianDuUnit[100];		//		//监督单位
	char	chShiGongUnit[100];		//		//施工单位
	char	chWeiTuoUnit[100];		//		//委托单位
	char	chProjectAddr[100];		//		//工程地点
	char	chHeTongNum[40];		//		//合同号
	char	chWeiTuoNum[40];		//		//委托编号
	char	chReportNum[40];		//		//报告编号
	char	chWeiTuoDate[28];		//		//委托时间
	char	chShiGongDate[28];		//		//施工日期
	char	chShenhePeople[28];		//		//审核人员
	char	chShenhePeopleNo[40];	//		//审核人员 上岗证号

	int		nLoadTime;				//		//加载维持时间  用于 水平多循环 
	int		nLoadoffTime;			//		//卸载维持时间  用于 水平多循环 
	int		nTableGap;				//		//上下表距		用于 水平多循环 

	float	fW;						//		自平衡等效Qs换算系数
	float	fr1;					//		自平衡等效Qs换算系数
	float	fLu;					//		自平衡等效Qs换算系数
	float	fEp;					//		自平衡等效Qs换算系数
	float	fAp;					//		自平衡等效Qs换算系数

	char	chMaxLoadType;			//		最大荷载类型 0-最大荷载（kN） 1-最大荷载（kPa） 2-最大拉力（kN）
	//2023.3.14 添加 拐点信息 只用于水平多循环曲线H-△Y0/△H 								
	char	chChangPointType;		//		计算拐点类型 0-角度，，1-自定义
	char	chChangPoint[42];		//		当自定义拐点时，拐点位置，1表示该序号时拐点
	float	fChangePointAngle;		//		计算拐点的角度值  默认30
	char	chRes2[920];			//		//预留967
}HZ_Project_Info;					//	

						
//率定信息
struct LVDING_INFO
{
	int		nType;					//		//0:千斤顶传感器  1：位移传感器
	char	chDevNo[60];			//		//编号
	float	fLiangCheng;			//		//量程
	float	fGap;					//		//间隔
	float	fLvDingData[200];		//		//率定值
	char	chDate[28];				//		//率定日期				
	char	Res[100];				//		//备用
};